# ```mermaid
# graph LR
#     classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px
#     A(创建栈):::process --> B(入栈操作):::process
#     B --> C{栈是否为空?}:::process
#     C -->|否| D(出栈操作):::process
#     C -->|是| E(结束):::process
#     D --> C
# ```

class Stack:
    def __init__(self):
        self.items = []

    def push(self, item):
        self.items.append(item)

    def pop(self):
        if not self.is_empty():
            return self.items.pop()
        return None

    def is_empty(self):
        return len(self.items) == 0


# 使用示例
stack = Stack()
stack.push(1)
stack.push(2)
print(stack.pop())

a = "a"
b = str("a")
print(a is b)
print(a == b)

str4 = "hello"
str5 = ''.join(['h', 'e', 'l', 'l', 'o'])
print("str4 == str5", str4 == str5)
print("str4 is str5", str4 is str5)
